perm filename MACHIN[F75,JMC] blob sn#192384 filedate 1975-12-17 generic text, type T, neo UTF8
00100	SOME PREJUDICES ON NEW MACHINE DESIGN
00200	
00300	
00400		1. To the extent that the AI Lab gives any support to a
00500	project to design a new machine, it must be to a machine that has
00600	the potentiality to replace the PDP-10.
00700	
00800		2. The design should not be so gold-plated that it is
00900	unlikely ever to be built, so we can't afford much log-rolling,
01000	i.e. I'll agree to you bright idea if you'll agree to mine.
01100	
01200		3. The basic structure of the PDP-10 instruction set -
01300	unsymmetrical two address - is as good as any current machine.
01400	In particular, it is better than the IBM360/370.  The code density
01500	the 360 purports to gain from base register and displacement is
01600	lost in actual coding whether by hand or by compiler and it imposes
01700	harmful complexity in both hand and compiler produced code.
01800	
01900		4. The only immediately visible limitation on the PDP-10
02000	is address size, but there are other features that might as well
02100	be improved while we are at it.
02200	
02300		5. My leading candidate is to keep the same structure
02400	but go to a 64 bit word with a 32 bit address accepting the
02500	loss in code density and list structure density that this
02600	entails.  Memory is getting cheap rapidly.
02700	
02800		6. It is very important that the design have a 15 year
02900	useful life as far a program structure goes.  The PDP-10 will
03000	have lived that long  or maybe even 20 years before people stop
03100	buying them.
03200	
03300		7. At the point in the life of a machine where addressing
03400	changes have to be made, the development of system programming
03500	has always become disorganized, because different groups encounter
03600	the limitations at different times and adopt ad hoc solutions
03700	suited to their needs.  The different schemes for paging illustrate
03800	this for both the PDP-10 and the 360.
03900	Therefore, the paging scheme adopted must also have long life.
04000	
04100		8. It would be good if the design allowed for multi-processors
04200	in large numbers useing the task queue approach to to multi-processing
04300	rather than the function allocation approach.
04400	
04500		9. In my opinion, the machine built should be a prototype
04600	for time-sharing system development. Therefore, it need be no
04700	faster than the PDP-10 and should not have paging or any kind of
04800	pipelining though the architecture should not be incompatible with
04900	these goodies.  The architecture and the design of the time-haring
05000	system should be compatiblle with queue driven multi-processing, and
05100	if it is necessary to assure this, more than one processor should
05200	be built at the start.
05300	
05400		10. It is my impression that the greatest area of improvement
05500	in architecture lies in facilities for improving the efficiency
05600	of the the time-sharing system.